package cn.gogpay.dcb.api.mq;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Transient;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 多彩宝平台订单实体
 * @author zhanglong@gogpay.cn
 * @date 2020/1/14 20:16
 */
public class OrderDTO {
    /**
     * 订单编号
     */
    private String orderNo;

    /**
     * 订单时间 财务核算用
     */
    private LocalDateTime orderTime;

    /**
     * 订单时间 用户下单时间
     */
    private LocalDateTime userOrderTime;

    /**
     * 地区编码
     */
    private String areaCode;

    /**
     * 地区名称
     */
    private String areaName;

    /**
     * 业务类型
     */
    private String type;

    /**
     * 业务名称
     */
    private String typeName;

    /**
     * 机构编码
     */
    private String orgCode;

    /**
     * 机构名称
     */
    private String orgName;

    /**
     * 子机构编码
     */
    private String unitOrgCode;

    /**
     * 子机构名称
     */
    private String unitOrgName;

    /**
     * 户号/账号
     */
    private String consNo;

    /**
     * 户名/账户名
     */
    private String consName;

    /**
     * 订单金额
     */
    private BigDecimal amt;

    /**
     * 优惠金额
     */
    private BigDecimal discountedAmt;

    /**
     * 支付金额 = 订单金额 - 优惠金额
     */
    private BigDecimal payAmt;

    /**
     * 订单来源
     */
    private String source;

    /**
     * 支付类型
     */
    private String payType;

    /**
     * 支付状态
     */
    private String payStatus;

    /**
     * 支付时间
     */
    private LocalDateTime payTime;

    /**
     * 支付流水
     */
    private String paySerial;

    /**
     * 订单状态
     */
    private String status;

    /**
     * 订单状态时间
     */
    private LocalDateTime statusTime;

    /**
     * 用户ID
     */
    private String userId;

    /**
     * 删除标识
     */
    private Boolean delFlag;

    /**
     * 批量订单编号
     */
    private String batchNo;

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public LocalDateTime getOrderTime() {
        return orderTime;
    }

    public void setOrderTime(LocalDateTime orderTime) {
        this.orderTime = orderTime;
    }

    public LocalDateTime getUserOrderTime() {
        return userOrderTime;
    }

    public void setUserOrderTime(LocalDateTime userOrderTime) {
        this.userOrderTime = userOrderTime;
    }

    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    public String getAreaName() {
        return areaName;
    }

    public void setAreaName(String areaName) {
        this.areaName = areaName;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getTypeName() {
        return typeName;
    }

    public void setTypeName(String typeName) {
        this.typeName = typeName;
    }

    public String getOrgCode() {
        return orgCode;
    }

    public void setOrgCode(String orgCode) {
        this.orgCode = orgCode;
    }

    public String getOrgName() {
        return orgName;
    }

    public void setOrgName(String orgName) {
        this.orgName = orgName;
    }

    public String getUnitOrgCode() {
        return unitOrgCode;
    }

    public void setUnitOrgCode(String unitOrgCode) {
        this.unitOrgCode = unitOrgCode;
    }

    public String getUnitOrgName() {
        return unitOrgName;
    }

    public void setUnitOrgName(String unitOrgName) {
        this.unitOrgName = unitOrgName;
    }

    public String getConsNo() {
        return consNo;
    }

    public void setConsNo(String consNo) {
        this.consNo = consNo;
    }

    public String getConsName() {
        return consName;
    }

    public void setConsName(String consName) {
        this.consName = consName;
    }

    public BigDecimal getAmt() {
        return amt;
    }

    public void setAmt(BigDecimal amt) {
        this.amt = amt;
    }

    public BigDecimal getDiscountedAmt() {
        return discountedAmt;
    }

    public void setDiscountedAmt(BigDecimal discountedAmt) {
        this.discountedAmt = discountedAmt;
    }

    public BigDecimal getPayAmt() {
        return payAmt;
    }

    public void setPayAmt(BigDecimal payAmt) {
        this.payAmt = payAmt;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public String getPayType() {
        return payType;
    }

    public void setPayType(String payType) {
        this.payType = payType;
    }

    public String getPayStatus() {
        return payStatus;
    }

    public void setPayStatus(String payStatus) {
        this.payStatus = payStatus;
    }

    public LocalDateTime getPayTime() {
        return payTime;
    }

    public void setPayTime(LocalDateTime payTime) {
        this.payTime = payTime;
    }

    public String getPaySerial() {
        return paySerial;
    }

    public void setPaySerial(String paySerial) {
        this.paySerial = paySerial;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public LocalDateTime getStatusTime() {
        return statusTime;
    }

    public void setStatusTime(LocalDateTime statusTime) {
        this.statusTime = statusTime;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public Boolean getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(Boolean delFlag) {
        this.delFlag = delFlag;
    }

    public String getBatchNo() {
        return batchNo;
    }

    public void setBatchNo(String batchNo) {
        this.batchNo = batchNo;
    }
}
